{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "from torch.utils.data import Dataset,DataLoader,TensorDataset\n",
    "import pandas as pd \n",
    "import numpy as np\n",
    "import os\n",
    "os.environ[\"KMP_DUPLICATE_LIB_OK\"]=\"TRUE\"\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>TimeStamp</th>\n",
       "      <th>Ch 00</th>\n",
       "      <th>Ch 02</th>\n",
       "      <th>Ch 04</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.029100</td>\n",
       "      <td>0.003980</td>\n",
       "      <td>-0.000484</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.000039</td>\n",
       "      <td>0.002870</td>\n",
       "      <td>0.003460</td>\n",
       "      <td>-0.000306</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.000078</td>\n",
       "      <td>0.002340</td>\n",
       "      <td>0.001960</td>\n",
       "      <td>0.027100</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.000117</td>\n",
       "      <td>0.004020</td>\n",
       "      <td>-0.001370</td>\n",
       "      <td>0.002910</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.000156</td>\n",
       "      <td>0.003510</td>\n",
       "      <td>-0.000241</td>\n",
       "      <td>0.002380</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>0.000195</td>\n",
       "      <td>0.002010</td>\n",
       "      <td>0.027100</td>\n",
       "      <td>0.004040</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>0.000234</td>\n",
       "      <td>-0.002320</td>\n",
       "      <td>0.002920</td>\n",
       "      <td>0.003510</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>0.000273</td>\n",
       "      <td>-0.000255</td>\n",
       "      <td>0.002390</td>\n",
       "      <td>0.002030</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>0.000313</td>\n",
       "      <td>0.028700</td>\n",
       "      <td>0.003930</td>\n",
       "      <td>-0.002920</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>0.000352</td>\n",
       "      <td>0.002800</td>\n",
       "      <td>0.003400</td>\n",
       "      <td>-0.000380</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>0.000391</td>\n",
       "      <td>0.002280</td>\n",
       "      <td>0.001890</td>\n",
       "      <td>0.031500</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>0.000430</td>\n",
       "      <td>0.003990</td>\n",
       "      <td>-0.002880</td>\n",
       "      <td>0.002880</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>0.000469</td>\n",
       "      <td>0.003470</td>\n",
       "      <td>-0.000282</td>\n",
       "      <td>0.002350</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>0.000508</td>\n",
       "      <td>0.001970</td>\n",
       "      <td>0.035200</td>\n",
       "      <td>0.004040</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>0.000547</td>\n",
       "      <td>-0.002160</td>\n",
       "      <td>0.002910</td>\n",
       "      <td>0.003500</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>0.000586</td>\n",
       "      <td>-0.000265</td>\n",
       "      <td>0.002390</td>\n",
       "      <td>0.002010</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>0.000625</td>\n",
       "      <td>0.038200</td>\n",
       "      <td>0.003950</td>\n",
       "      <td>-0.000916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>0.000664</td>\n",
       "      <td>0.002850</td>\n",
       "      <td>0.003420</td>\n",
       "      <td>-0.000329</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>0.000703</td>\n",
       "      <td>0.002330</td>\n",
       "      <td>0.001940</td>\n",
       "      <td>0.039300</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>0.000742</td>\n",
       "      <td>0.004020</td>\n",
       "      <td>0.000518</td>\n",
       "      <td>0.002920</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    TimeStamp     Ch 00     Ch 02     Ch 04\n",
       "0    0.000000  0.029100  0.003980 -0.000484\n",
       "1    0.000039  0.002870  0.003460 -0.000306\n",
       "2    0.000078  0.002340  0.001960  0.027100\n",
       "3    0.000117  0.004020 -0.001370  0.002910\n",
       "4    0.000156  0.003510 -0.000241  0.002380\n",
       "5    0.000195  0.002010  0.027100  0.004040\n",
       "6    0.000234 -0.002320  0.002920  0.003510\n",
       "7    0.000273 -0.000255  0.002390  0.002030\n",
       "8    0.000313  0.028700  0.003930 -0.002920\n",
       "9    0.000352  0.002800  0.003400 -0.000380\n",
       "10   0.000391  0.002280  0.001890  0.031500\n",
       "11   0.000430  0.003990 -0.002880  0.002880\n",
       "12   0.000469  0.003470 -0.000282  0.002350\n",
       "13   0.000508  0.001970  0.035200  0.004040\n",
       "14   0.000547 -0.002160  0.002910  0.003500\n",
       "15   0.000586 -0.000265  0.002390  0.002010\n",
       "16   0.000625  0.038200  0.003950 -0.000916\n",
       "17   0.000664  0.002850  0.003420 -0.000329\n",
       "18   0.000703  0.002330  0.001940  0.039300\n",
       "19   0.000742  0.004020  0.000518  0.002920"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "'''\n",
    "读取数据\n",
    "'''\n",
    "data_address = 'xxx.xlsx'\n",
    "# dataset = pd.read_excel(data_address)#读取excel\n",
    "# filepath=\"C:\\\\Users\\\\forwhat\\\\Desktop\\\\甘肃庆阳中国石油\\\\幅频特性与分析(统计特征)\\\\001-DSA_222.csv\"\n",
    "# filepath=\"C:\\\\Users\\\\zhouy_000\\\\Desktop\\\\python_study\\\\20190417\\\\test.csv\"\n",
    "dataset = pd.read_csv('002-DSA_222.csv',encoding='utf-8')#ch00 -x ch02 -y ch04 -z\n",
    "# dataset = pd.read_csv('XXXX.CSV',encoding='utf-8')#读取csv\n",
    "dataset.head(20)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Ch 00</th>\n",
       "      <th>Ch 02</th>\n",
       "      <th>Ch 04</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.02910</td>\n",
       "      <td>0.003980</td>\n",
       "      <td>-0.000484</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.00287</td>\n",
       "      <td>0.003460</td>\n",
       "      <td>-0.000306</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.00234</td>\n",
       "      <td>0.001960</td>\n",
       "      <td>0.027100</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.00402</td>\n",
       "      <td>-0.001370</td>\n",
       "      <td>0.002910</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.00351</td>\n",
       "      <td>-0.000241</td>\n",
       "      <td>0.002380</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     Ch 00     Ch 02     Ch 04\n",
       "0  0.02910  0.003980 -0.000484\n",
       "1  0.00287  0.003460 -0.000306\n",
       "2  0.00234  0.001960  0.027100\n",
       "3  0.00402 -0.001370  0.002910\n",
       "4  0.00351 -0.000241  0.002380"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "def selected_dataset(dataset):#选取需要的特征\n",
    "    # features = ['有功功率(W)','最高气温','最低气温','天气状况','is_sunday']\n",
    "    features = ['Ch 00','Ch 02','Ch 04']\n",
    "    selected_dataset = dataset[features]\n",
    "    return selected_dataset\n",
    "selected_dataset = selected_dataset(dataset)\n",
    "selected_dataset.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "'''\n",
    "计算rms值，root mean square 也就是有效值\n",
    "'''\n",
    "import math\n",
    "def get_rms(records):\n",
    "    \"\"\"\n",
    "    均方根值 反映的是有效值而不是平均值\n",
    "    \"\"\"\n",
    "    return math.sqrt(sum([x ** 2 for x in records]) / len(records))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "x—axis的有效值为: 7.979646917152465 e-3 ms/m^2\n",
      "y—axis的有效值为: 7.979750337805149 e-3 ms/m^2\n",
      "z—axis的有效值为: 7.979506919453696 e-3 ms/m^2\n"
     ]
    }
   ],
   "source": [
    "ch00_rms = get_rms(selected_dataset['Ch 00'])\n",
    "print(\"x—axis的有效值为:\",ch00_rms*1000,\"e-3 ms/m^2\")#x1000方便观察\n",
    "ch02_rms = get_rms(selected_dataset['Ch 02'])\n",
    "print(\"y—axis的有效值为:\",ch02_rms*1000,\"e-3 ms/m^2\")#x1000方便观察\n",
    "ch04_rms = get_rms(selected_dataset['Ch 04'])\n",
    "print(\"z—axis的有效值为:\",ch04_rms*1000,\"e-3 ms/m^2\")#x1000方便观察"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "\n",
    "'''\n",
    "可视化三轴时域数据\n",
    "'''\n",
    "#在开头加上如下代码可以在jupyter notebook行内形成交互式的图表\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "# plt.plot(selected_dataset['Ch 00'],selected_dataset['Ch 02'],selected_dataset['Ch 04'])\n",
    "plt.plot(selected_dataset['Ch 00'][0:200])#展示200个数据，数据量太大不方便可视化，时域三轴数据可视化\n",
    "plt.plot(selected_dataset['Ch 02'][0:200])\n",
    "plt.plot(selected_dataset['Ch 04'][0:200])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1048571\n"
     ]
    }
   ],
   "source": [
    "'''\n",
    "频谱分析\n",
    "'''\n",
    "n=len(dataset)#数据条数\n",
    "print(n)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 打印数字\n",
    "print(\"freq:M, Y: %5.2f + %5.2f j, A:%3.2f, phi: %6.1f\"%(i, Y[i].real, Y[i].imag, absY[i],math.atan2(Y[i].imag,Y[i].real)*180/math.pi))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "from numpy.fft import fft\n",
    "from numpy import linspace, sin, pi, power, ceil, log2, arange, random\n",
    "from matplotlib import pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "'''\n",
    "定义傅里叶变换函数\n",
    "'''\n",
    "def fft_func(fs, data):\n",
    "    len_ = len(data)\n",
    "    n = int(power(2, ceil(log2(len_))))\n",
    "    fft_y_ = (fft(y, n)) / len_ * 2\n",
    "    fre_ = arange(int(n / 2)) * fs / n\n",
    "    fft_y_ = fft_y_[range(int(n / 2))]\n",
    "    return fre_, fft_y_"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "if __name__ == '__main__':\n",
    "    Fs = 256000\n",
    "    # f1 = 390\n",
    "    # f2 = 2e3\n",
    "\n",
    "    noise1 = random.random(Fs)\n",
    "    noise2 = random.normal(1, 10, Fs)\n",
    "\n",
    "    t = linspace(0, 1, Fs)\n",
    "    # print(t)\n",
    "    # print(len(t))\n",
    "    y = selected_dataset['Ch 00'][0:256000]\n",
    "    # y = selected_dataset['Ch 00'][0:256000]+noise2\n",
    "    # y = 2 * sin(2 * pi * f1 * t) + 5 * sin(2 * pi * f2 * t)\n",
    "    # y = 2 * sin(2 * pi * f1 * t) + 5 * sin(2 * pi * f2 * t) + noise2\n",
    "\n",
    "    fre, fft_y = fft_func(Fs, y)#采样频率对应的采样点数\n",
    "    plt.figure()\n",
    "    plt.plot(fre, abs(fft_y))#画出freq与amp\n",
    "    plt.grid()\n",
    "    # plt.xlabel(u\"Time(S)\")\n",
    "    plt.xlabel(u\"Freq(Hz)\")\n",
    "    plt.ylabel(u\"Amp(ms/s^2)\")\n",
    "    plt.title(u\"WaveForm And Freq\")\n",
    "    plt.show()\n",
    "\n",
    " "
   ]
  }
 ],
 "metadata": {
  "interpreter": {
   "hash": "ea70d47c1026074199160e48050b9f1be75d4ba7d6f2081b88238ca77789226b"
  },
  "kernelspec": {
   "display_name": "Python 3.7.11 ('pytorch-gpu')",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.11"
  },
  "orig_nbformat": 4
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
